The patch allows x86_64 SMP Xen/XenLinux (dom0) to run on relatively big
authorkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>
Fri, 19 Aug 2005 09:05:04 +0000 (09:05 +0000)
committerkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>
Fri, 19 Aug 2005 09:05:04 +0000 (09:05 +0000)
SMP machines.
I tested on an 8-way machine with 8GB. It looks stable as far as I did
sanity checks, such as an infinite loop of "make -j32"; it's very fast!.

Signed-off-by: Jun Nakajima <jun.nakajima@intel.com>
linux-2.6-xen-sparse/arch/xen/x86_64/kernel/setup64.c

index d50d62e38be266017e950c0e776d6614de79a467..1b0e1e00470e6f67b763b43b153b59d0a887ceb8 100644 (file)
@@ -280,19 +280,16 @@ void __init cpu_init (void)
        if (cpu) {
                memcpy(cpu_gdt_table[cpu], cpu_gdt_table[0], GDT_SIZE);
        }       
-#endif
 
        cpu_gdt_descr[cpu].size = GDT_SIZE;
        cpu_gdt_descr[cpu].address = (unsigned long)cpu_gdt_table[cpu];
 
-        cpu_gdt_init(&cpu_gdt_descr[cpu]);
-
-#ifndef CONFIG_XEN 
        memcpy(me->thread.tls_array, cpu_gdt_table[cpu], GDT_ENTRY_TLS_ENTRIES * 8);
-
 #else
        memcpy(me->thread.tls_array, &get_cpu_gdt_table(cpu)[GDT_ENTRY_TLS_MIN],
            GDT_ENTRY_TLS_ENTRIES * 8);
+
+    cpu_gdt_init(&cpu_gdt_descr[cpu]);
 #endif
        
        /*